package com.feature.shop.user.api;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

import com.feature.core.domain.PageVo;
import com.feature.core.domain.Response;
import com.feature.shop.user.api.constant.ApiNameConstant;
import com.feature.shop.user.api.request.ShopRoleAddRequest;
import com.feature.shop.user.api.request.ShopRoleDelRequest;
import com.feature.shop.user.api.request.ShopRolePageRequest;
import com.feature.shop.user.api.request.ShopRoleUpdateRequest;
import com.feature.shop.user.api.vo.ShopRoleVo;

@FeignClient(contextId = "ShopRoleApi", name = ApiNameConstant.APPLICATION_NAME)
public interface ShopRoleApi {

    @PostMapping("/role/queryRolePage")
    public Response<PageVo<ShopRoleVo>> queryRolePage(ShopRolePageRequest request);

    @PostMapping("/role/addRole")
    Response<?> addRole(ShopRoleAddRequest req);

    @PostMapping("/role/updateRole")
    Response<?> updateRole(ShopRoleUpdateRequest req);

    @PostMapping("/role/delRole")
    Response<?> delRole(ShopRoleDelRequest req);
}
